mob/proc

	itemDrop(obj/Items/o)
		if(o.canStack && o.contents.len)
			var/obj/Items/theItem=pick(o.contents)
			theItem.loc=src.loc
			if(o.contents.len)
				o.suffix="x[o.contents.len+1]"
			else
				o.suffix="x1"
		else
			o.loc=src.loc
			o.suffix=""

	itemAdd(obj/Items/o)
		var/list/items=list()

		for(var/obj/i in src.contents)
			items+=i.type

		if(o.type in items) //if a similer item is found in the contents
			if(o.canStack)
				var/obj/Items/theItem
				for(var/obj/i in src.contents) if(i.type == o.type) theItem=i
				if(theItem)
					theItem.contents+=o
					theItem.suffix="x[theItem.contents.len+1]"
				else
					src.contents+=o
					o.suffix="x1"
			else
				src.contents+=o

		else
			src.contents+=o
			o.suffix="[o.canStack ? "x1" : "[o.suffix]"]"

obj
	Items
		var/canStack=0

		verb/Get()
			set src in oview(1)
			usr.itemAdd(src)

		verb/Drop()
			set src in usr
			usr.itemDrop(src)


